#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<graphics.h>
#include<math.h>
#include<string.h>
#include<ctype.h>
#include<time.h>
#include<dos.h>
struct point
{
  int x1;
  int y1;
  int x2;
  int y2;
};
point
/////first line////
one={173,420,219,466},two={219,420,265,466},three={265,420,311,466},
four={311,420,357,466},five={357,420,403,466},six={403,420,449,466},
seven={449,420,495,466},eight={495,420,541,466},nine={541,420,587,466},
ten={587,420,633,466},
//////secon line////
eleven={587,374,633,420},twelve={541,374,587,420},thirteen={495,374,541,420},
fourteen={449,374,495,420},fifteen={403,374,449,420},sixteen={357,374,403,420},
seventeen={311,374,357,420},eighteen={265,374,311,420},nineteen={219,374,265,420},
twenty={173,374,219,420},
//////////3rd line//////////////////
twenty1={173,328,219,374},twenty2={219,328,265,374},twenty3={265,328,311,374},
twenty4={311,328,357,374},twenty5={357,328,403,374},twenty6={403,328,449,374},
twenty7={449,328,495,374},twenty8={495,328,541,374},twenty9={541,328,587,374},
thirty={587,328,633,374},
//////fourth line////
thirty1={587,282,633,328},thirty2={541,282,587,328},thirty3={495,282,541,328},
thirty4={449,282,495,328},thirty5={403,282,449,328},thirty6={357,282,403,328},
thirty7={311,282,357,328},thirty8={265,282,311,328},thirty9={219,282,265,328},
fourty={173,282,219,328},
//////fifth line////
fourty1={173,236,219,282},fourty2={219,236,265,282},fourty3={265,236,311,282},
fourty4={311,236,357,282},fourty5={357,236,403,282},fourty6={403,236,449,282},
fourty7={449,236,495,282},fourty8={495,236,541,282},fourty9={541,236,587,282},
fifty={587,236,633,282},
/////////////sixth line/////////////
fifty1={587,190,633,236},fifty2={541,190,587,236},fifty3={495,190,541,236},
fifty4={449,190,495,236},fifty5={403,190,449,236},fifty6={357,190,403,236},
fifty7={311,190,357,236},fifty8={265,190,311,236},fifty9={219,190,265,236},
sixty={173,190,219,236},
//////////////seventh line////////////////
sixty1={173,144,219,190},sixty2={219,144,265,190},sixty3={265,144,311,190},
sixty4={311,144,357,190},sixty5={357,144,403,190},sixty6={403,144,449,190},
sixty7={449,144,495,190},sixty8={495,144,541,190},sixty9={541,144,587,190},
seventy={587,144,633,190},
///////////////eight line//////////////////
seventy1={587,98,633,144},seventy2={541,98,587,144},seventy3={495,98,541,144},
seventy4={449,98,495,144},seventy5={403,98,449,144},seventy6={357,98,403,144},
seventy7={311,98,357,144},seventy8={265,98,311,144},seventy9={219,98,265,144},
eighty={173,98,219,144},
///////////////ninth line/////////////////
eighty1={173,52,219,98},eighty2={219,52,265,98},eighty3={265,52,311,98},
eighty4={311,52,357,98},eighty5={357,52,403,98},eighty6={403,52,449,98},
eighty7={449,52,495,98},eighty8={495,52,541,98},eighty9={541,52,587,98},
ninty={587,52,633,98},
/////////////////10th line/////////////////
ninty1={587,6,633,52},ninty2={541,6,587,52},ninty3={495,6,541,52},
ninty4={449,6,495,52},ninty5={403,6,449,52},ninty6={357,6,403,52},
ninty7={311,6,357,52},ninty8={265,6,311,52},ninty9={219,6,265,52},
hundred={173,6,219,52};

void mouse(int ax,int bx,int cx,int dx);
int gax,gbx,gcx,gdx;
void startsnakeladder(void);
void loading(void);
void box(void);
void numbers(void);
void snakes(void);
void ladders(void);
void redpiece(void);
void yellowpiece(void);
void magentpiece(void);
void bluepiece(void);
void dice1(void);
void dice2(void);
void dicenumber(int);
void removedicenumber(void);
void snakesound(void);
void laddersound(void);
void messagebox(void);
void congragulation(void);
void main(void)
{
   char ch,ch1,choice;
   int d=VGA,m=VGAHI;
   void *buff,*temp,*win,*temp95,*temp97,*temp98;
   unsigned int size,size1,sizeofwindow,size95,size97,size98;
   int last=0,moving1=0,enterdice=1,store=0;
   initgraph(&d,&m,"c:\\tc\\bgi");
   ///////////////////////starting the main code/////////////////////////////
   startsnakeladder();
   while(1)
   {
	 //choice=getch();//players
	 getch();
	     // if (choice=='1')
		 {
			 loading();
			 cleardevice();
			 redpiece();
			 break;
		 }
	 }
	 box();
	 numbers();
	 ladders();
	 snakes();
	 settextstyle(0,HORIZ_DIR,1);
	 setcolor(GREEN);
	 rectangle(40,295,110,320);
	 outtextxy(55,298,"ROLL");
	 outtextxy(65,310,"DICE");
	 /////////getting image of 95///////////
	 size95=imagesize(403,6,449,52);
	 temp95=(void *)malloc(size95);
	 getimage(403,6,449,52,temp95);
	 //////////////////////////////////////////////
	 /////////getting image of 97///////////
	 size97=imagesize(311,6,357,52);
	 temp97=(void *)malloc(size97);
	 getimage(311,6,357,52,temp97);
	 //////////////////////////////////////////////
	 /////////getting image of 98///////////
	 size98=imagesize(265,6,311,52);
	 temp98=(void *)malloc(size98);
	 getimage(265,6,311,52,temp98);
	 //////////////////////////////////////////////
	 /////////getting image///////////
	 size=imagesize(10,420,56,466);
	 buff=(void *)malloc(size);
	 getimage(10,420,56,466,buff);
	 ///////getting image of borad ////////
	 sizeofwindow=imagesize(200,200,480,280);
	 win=(void *)malloc(sizeofwindow);
	 getimage(200,200,480,280,win);
	 /////////////WORKING//////////////////
	 randomize();
	 mouse(0,0,0,0);
	 mouse(1,0,0,0);
	 int a=1;
	 do
	 {
			while(1)
			{
	if(kbhit())
	{
	  mouse(2,0,0,0);
	  ch=getch();
	  if(ch=='\r')
	  {
	    break;
	  }
	  else if(ch=='e'||ch=='E')
	  {
	    break;
	  }
		else if(ch!='\r'||ch!='e')
	  {
	    mouse(2,0,0,0);
	    sound(2450);
	    delay(100);
	    nosound();
	  }
	}
	else
	{
	  mouse(5,1,0,0);
	  {
	    if(gbx==1)
	    {
	       sound(2500);
	       delay(100);
	       sound(2000);
	       delay(100);
	       sound(3000);
				 delay(100);
				 nosound();
	    }
	  }
	  mouse(5,0,0,0);
	  {
	   if(gbx==1)
	   {
	     if(gcx>40&&gdx>295&&gcx<110&&gdx<320)
	     {
	       mouse(2,0,0,0);
	       ch='\r';
	       break;
	     }
	     if(gcx>7&&gdx>4&&gcx<33&&gdx<21)
	     {
	       mouse(2,0,0,0);
	       ch='e';
	       break;
	     }
		 }
		}
	}
      }/////end of while
      if (ch=='e'||ch=='E')
      {
	exit(0);
      }
      if(ch=='\r')
      {
	if (enterdice==2)
	{
	   removedicenumber();
	}
	moving1=random(6)+1;
	store=moving1;
	for (int d=0;d<3;d++)
	{
	   dice1();
	   dice2();
	}
	mouse(1,0,0,0);
	enterdice=2;
	dicenumber(moving1);
	delay(500);
	moving1=moving1+last;
	if(a==1)
	{
	moving1=1;
	a=2;
	}
      switch(last)
      {
	case 1 :  putimage(one.x1,one.y1,temp,COPY_PUT);break;
	case 2 :  putimage(two.x1,two.y1,temp,COPY_PUT);break;
	case 3 :  putimage(three.x1,three.y1,temp,COPY_PUT);break;
	case 4 :  putimage(four.x1,four.y1,temp,COPY_PUT);break;
	case 5 :  putimage(five.x1,five.y1,temp,COPY_PUT);break;
	case 6 :  putimage(six.x1,six.y1,temp,COPY_PUT);break;
	case 7 :  putimage(seven.x1,seven.y1,temp,COPY_PUT);break;
	case 8 :  putimage(eight.x1,eight.y1,temp,COPY_PUT);break;
	case 9 :  putimage(nine.x1,nine.y1,temp,COPY_PUT);break;
	case 10 : putimage(ten.x1,ten.y1,temp,COPY_PUT);break;
	case 11 : putimage(eleven.x1,eleven.y1,temp,COPY_PUT);break;
	case 12 : putimage(twelve.x1,twelve.y1,temp,COPY_PUT);break;
	case 13 : putimage(thirteen.x1,thirteen.y1,temp,COPY_PUT);break;
	case 14 : putimage(fourteen.x1,fourteen.y1,temp,COPY_PUT);break;
	case 15 : putimage(fifteen.x1,fifteen.y1,temp,COPY_PUT);break;
	case 16 : putimage(sixteen.x1,sixteen.y1,temp,COPY_PUT);break;
	case 17 : putimage(seventeen.x1,seventeen.y1,temp,COPY_PUT);break;
	case 18 : putimage(eighteen.x1,eighteen.y1,temp,COPY_PUT);break;
	case 19 : putimage(nineteen.x1,nineteen.y1,temp,COPY_PUT);break;
	case 20 : putimage(twenty.x1,twenty.y1,temp,COPY_PUT);break;
	case 21 : putimage(twenty1.x1,twenty1.y1,temp,COPY_PUT);break;
	case 22 : putimage(twenty2.x1,twenty2.y1,temp,COPY_PUT);break;
	case 23 : putimage(twenty3.x1,twenty3.y1,temp,COPY_PUT);break;
	case 24 : putimage(twenty4.x1,twenty4.y1,temp,COPY_PUT);break;
	case 25 : putimage(twenty5.x1,twenty5.y1,temp,COPY_PUT);break;
	case 26 : putimage(twenty6.x1,twenty6.y1,temp,COPY_PUT);break;
	case 27 : putimage(twenty7.x1,twenty7.y1,temp,COPY_PUT);break;
	case 28 : putimage(twenty8.x1,twenty8.y1,temp,COPY_PUT);break;
	case 29 : putimage(twenty9.x1,twenty9.y1,temp,COPY_PUT);break;
	case 30 : putimage(thirty.x1,thirty.y1,temp,COPY_PUT);break;
	case 31 : putimage(thirty1.x1,thirty1.y1,temp,COPY_PUT);break;
	case 32 : putimage(thirty2.x1,thirty2.y1,temp,COPY_PUT);break;
	case 33 : putimage(thirty3.x1,thirty3.y1,temp,COPY_PUT);break;
	case 34 : putimage(thirty4.x1,thirty4.y1,temp,COPY_PUT);break;
	case 35 : putimage(thirty5.x1,thirty5.y1,temp,COPY_PUT);break;
	case 36 : putimage(thirty6.x1,thirty6.y1,temp,COPY_PUT);break;
	case 37 : putimage(thirty7.x1,thirty7.y1,temp,COPY_PUT);break;
	case 38 : putimage(thirty8.x1,thirty8.y1,temp,COPY_PUT);break;
	case 39 : putimage(thirty9.x1,thirty9.y1,temp,COPY_PUT);break;
	case 40 : putimage(fourty.x1,fourty.y1,temp,COPY_PUT);break;
	case 41 : putimage(fourty1.x1,fourty1.y1,temp,COPY_PUT);break;
	case 42 : putimage(fourty2.x1,fourty2.y1,temp,COPY_PUT);break;
	case 43 : putimage(fourty3.x1,fourty3.y1,temp,COPY_PUT);break;
	case 44 : putimage(fourty4.x1,fourty4.y1,temp,COPY_PUT);break;
	case 45 : putimage(fourty5.x1,fourty5.y1,temp,COPY_PUT);break;
	case 46 : putimage(fourty6.x1,fourty6.y1,temp,COPY_PUT);break;
	case 47 : putimage(fourty7.x1,fourty7.y1,temp,COPY_PUT);break;
	case 48 : putimage(fourty8.x1,fourty8.y1,temp,COPY_PUT);break;
	case 49 : putimage(fourty9.x1,fourty9.y1,temp,COPY_PUT);break;
	case 50 : putimage(fifty.x1,fifty.y1,temp,COPY_PUT);break;
	case 51 : putimage(fifty1.x1,fifty1.y1,temp,COPY_PUT);break;
	case 52 : putimage(fifty2.x1,fifty2.y1,temp,COPY_PUT);break;
	case 53 : putimage(fifty3.x1,fifty3.y1,temp,COPY_PUT);break;
	case 54 : putimage(fifty4.x1,fifty4.y1,temp,COPY_PUT);break;
	case 55 : putimage(fifty5.x1,fifty5.y1,temp,COPY_PUT);break;
	case 56 : putimage(fifty6.x1,fifty6.y1,temp,COPY_PUT);break;
	case 57 : putimage(fifty7.x1,fifty7.y1,temp,COPY_PUT);break;
	case 58 : putimage(fifty8.x1,fifty8.y1,temp,COPY_PUT);break;
	case 59 : putimage(fifty9.x1,fifty9.y1,temp,COPY_PUT);break;
	case 60 : putimage(sixty.x1,sixty.y1,temp,COPY_PUT);break;
	case 61 : putimage(sixty1.x1,sixty1.y1,temp,COPY_PUT);break;
	case 62 : putimage(sixty2.x1,sixty2.y1,temp,COPY_PUT);break;
	case 63 : putimage(sixty3.x1,sixty3.y1,temp,COPY_PUT);break;
	case 64 : putimage(sixty4.x1,sixty4.y1,temp,COPY_PUT);break;
	case 65 : putimage(sixty5.x1,sixty5.y1,temp,COPY_PUT);break;
	case 66 : putimage(sixty6.x1,sixty6.y1,temp,COPY_PUT);break;
	case 67 : putimage(sixty7.x1,sixty7.y1,temp,COPY_PUT);break;
	case 68 : putimage(sixty8.x1,sixty8.y1,temp,COPY_PUT);break;
	case 69 : putimage(sixty9.x1,sixty9.y1,temp,COPY_PUT);break;
	case 70 : putimage(seventy.x1,seventy.y1,temp,COPY_PUT);break;
	case 71 : putimage(seventy1.x1,seventy1.y1,temp,COPY_PUT);break;
	case 72 : putimage(seventy2.x1,seventy2.y1,temp,COPY_PUT);break;
	case 73 : putimage(seventy3.x1,seventy3.y1,temp,COPY_PUT);break;
	case 74 : putimage(seventy4.x1,seventy4.y1,temp,COPY_PUT);break;
	case 75 : putimage(seventy5.x1,seventy5.y1,temp,COPY_PUT);break;
	case 76 : putimage(seventy6.x1,seventy6.y1,temp,COPY_PUT);break;
	case 77 : putimage(seventy7.x1,seventy7.y1,temp,COPY_PUT);break;
	case 78 : putimage(seventy8.x1,seventy8.y1,temp,COPY_PUT);break;
	case 79 : putimage(seventy9.x1,seventy9.y1,temp,COPY_PUT);break;
	case 80 : putimage(eighty.x1,eighty.y1,temp,COPY_PUT);break;
	case 81 : putimage(eighty1.x1,eighty1.y1,temp,COPY_PUT);break;
	case 82 : putimage(eighty2.x1,eighty2.y1,temp,COPY_PUT);break;
	case 83 : putimage(eighty3.x1,eighty3.y1,temp,COPY_PUT);break;
	case 84 : putimage(eighty4.x1,eighty4.y1,temp,COPY_PUT);break;
	case 85 : putimage(eighty5.x1,eighty5.y1,temp,COPY_PUT);break;
	case 86 : putimage(eighty6.x1,eighty6.y1,temp,COPY_PUT);break;
	case 87 : putimage(eighty7.x1,eighty7.y1,temp,COPY_PUT);break;
	case 88 : putimage(eighty8.x1,eighty8.y1,temp,COPY_PUT);break;
	case 89 : putimage(eighty9.x1,eighty9.y1,temp,COPY_PUT);break;
	case 90 : putimage(ninty.x1,ninty.y1,temp,COPY_PUT);break;
	case 91 : putimage(ninty1.x1,ninty1.y1,temp,COPY_PUT);break;
	case 92 : putimage(ninty2.x1,ninty2.y1,temp,COPY_PUT);break;
	case 93 : putimage(ninty3.x1,ninty3.y1,temp,COPY_PUT);break;
	case 94 : putimage(ninty4.x1,ninty4.y1,temp,COPY_PUT);break;
	case 95 : if(last==95&&store<=5)
		  {
		  putimage(ninty5.x1,ninty5.y1,temp95,COPY_PUT);
		  break;
		  }
		  else
		  {
		  moving1=95;
		  messagebox();
		  delay(3500);
		  putimage(200,200,win,COPY_PUT);
		  free(win);
		  break;
			}
	case 96 : putimage(ninty6.x1,ninty6.y1,temp,COPY_PUT);break;
	case 97 : if(last==97&&store<=3)
		  {
		  putimage(ninty7.x1,ninty7.y1,temp97,COPY_PUT);break;
		  }
		  else
		  {
		  moving1=97;
		  messagebox();
		  delay(3500);
		  putimage(200,200,win,COPY_PUT);
		  free(win);
		  break;
		  }
	case 98 : if(last==98&&store<=2)
		  {
		   putimage(ninty8.x1,ninty8.y1,temp98,COPY_PUT);break;
		  }
		  else
			{
			moving1=98;
		  messagebox();
		  delay(3500);
		  putimage(200,200,win,COPY_PUT);
		  free(win);
		  break;
		  }
	case 99 : putimage(ninty9.x1,ninty9.y1,temp,COPY_PUT);break;
	case 100: putimage(hundred.x1,hundred.y1,temp,COPY_PUT);break;
      }
      switch(moving1)
      {
	case 1 :  size1=imagesize(one.x1,one.y1,one.x2,one.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(one.x1,one.y1,one.x2,one.y2,temp);
		  putimage(one.x1,one.y1,buff,COPY_PUT);
		  break;
	case 2 :  size1=imagesize(two.x1,two.y1,two.x2,two.y2);
			temp=(void *)malloc(size1);
			free(temp);
		  getimage(two.x1,two.y1,two.x2,two.y2,temp);
		  putimage(two.x1,two.y1,buff,COPY_PUT);
		  delay(200);
		  laddersound();
		  putimage(two.x1,two.y1,temp,COPY_PUT);
		  /////////for ladder 2 -23////////////
		  if (moving1==2)
		  {
		    moving1=23;
		    size1=imagesize(twenty3.x1,twenty3.y1,twenty3.x2,twenty3.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
		    getimage(twenty3.x1,twenty3.y1,twenty3.x2,twenty3.y2,temp);
		    putimage(twenty3.x1,twenty3.y1,buff,COPY_PUT);
		  }
		  ///////////for ladder 2 - 23
		  break;
	case 3 :  size1=imagesize(three.x1,three.y1,three.x2,three.y2);
			temp=(void *)malloc(size1);
			free(temp);
		  getimage(three.x1,three.y1,three.x2,three.y2,temp);
		  putimage(three.x1,three.y1,buff,COPY_PUT);
		  break;
	case 4 :  size1=imagesize(four.x1,four.y1,four.x2,four.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(four.x1,four.y1,four.x2,four.y2,temp);
		  putimage(four.x1,four.y1,buff,COPY_PUT);
		  break;
	case 5 :  size1=imagesize(five.x1,five.y1,five.x2,five.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(five.x1,five.y1,five.x2,five.y2,temp);
		  putimage(five.x1,five.y1,buff,COPY_PUT);
		  break;
	case 6 :  size1=imagesize(six.x1,six.y1,six.x2,six.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
			getimage(six.x1,six.y1,six.x2,six.y2,temp);
			putimage(six.x1,six.y1,buff,COPY_PUT);
		  break;
	case 7 :  size1=imagesize(seven.x1,seven.y1,seven.x2,seven.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(seven.x1,seven.y1,seven.x2,seven.y2,temp);
		  putimage(seven.x1,seven.y1,buff,COPY_PUT);
		  break;
	case 8 :  size1=imagesize(eight.x1,eight.y1,eight.x2,eight.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(eight.x1,eight.y1,eight.x2,eight.y2,temp);
		  putimage(eight.x1,eight.y1,buff,COPY_PUT);
		  break;
	case 9 :  size1=imagesize(nine.x1,nine.y1,nine.x2,nine.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(nine.x1,nine.y1,nine.x2,nine.y2,temp);
		  putimage(nine.x1,nine.y1,buff,COPY_PUT);
			break;
	case 10 : size1=imagesize(ten.x1,ten.y1,ten.x2,ten.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(ten.x1,ten.y1,ten.x2,ten.y2,temp);
		  putimage(ten.x1,ten.y1,buff,COPY_PUT);
		  break;
	case 11 : size1=imagesize(eleven.x1,eleven.y1,eleven.x2,eleven.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(eleven.x1,eleven.y1,eleven.x2,eleven.y2,temp);
		  putimage(eleven.x1,eleven.y1,buff,COPY_PUT);
		  delay(200);
		  laddersound();
		  putimage(eleven.x1,eleven.y1,temp,COPY_PUT);
		  /////for ladder from 11 - 28////////
		  if (moving1==11)
		  {
		    moving1=28;
		    size1=imagesize(twenty8.x1,twenty8.y1,twenty8.x2,twenty8.y2);
				temp=(void *)malloc(size1);
				free(temp);
		    getimage(twenty8.x1,twenty8.y1,twenty8.x2,twenty8.y2,temp);
		    putimage(twenty8.x1,twenty8.y1,buff,COPY_PUT);
		  }
		  /////for ladder from 11 - 28////////
		  break;
	case 12 : size1=imagesize(twelve.x1,twelve.y1,twelve.x2,twelve.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(twelve.x1,twelve.y1,twelve.x2,twelve.y2,temp);
		  putimage(twelve.x1,twelve.y1,buff,COPY_PUT);
		  break;
	case 13 : size1=imagesize(thirteen.x1,thirteen.y1,thirteen.x2,thirteen.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(thirteen.x1,thirteen.y1,thirteen.x2,thirteen.y2,temp);
		  putimage(thirteen.x1,thirteen.y1,buff,COPY_PUT);
		  break;
	case 14 : size1=imagesize(fourteen.x1,fourteen.y1,fourteen.x2,fourteen.y2);
			temp=(void *)malloc(size1);
			free(temp);
		  getimage(fourteen.x1,fourteen.y1,fourteen.x2,fourteen.y2,temp);
		  putimage(fourteen.x1,fourteen.y1,buff,COPY_PUT);
		  break;
	case 15 : size1=imagesize(fifteen.x1,fifteen.y1,fifteen.x2,fifteen.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fifteen.x1,fifteen.y1,fifteen.x2,fifteen.y2,temp);
		  putimage(fifteen.x1,fifteen.y1,buff,COPY_PUT);
		  delay(200);
		  laddersound();
		  putimage(fifteen.x1,fifteen.y1,temp,COPY_PUT);
		  ///for ladder from 15 - 34///////
		  if (moving1==15)
		  {
		    moving1=34;
		    size1=imagesize(thirty4.x1,thirty4.y1,thirty4.x2,thirty4.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
				getimage(thirty4.x1,thirty4.y1,thirty4.x2,thirty4.y2,temp);
				putimage(thirty4.x1,thirty4.y1,buff,COPY_PUT);
		  }
		  ///for ladder from 15 - 34///////
		  break;
	case 16 : size1=imagesize(sixteen.x1,sixteen.y1,sixteen.x2,sixteen.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(sixteen.x1,sixteen.y1,sixteen.x2,sixteen.y2,temp);
		  putimage(sixteen.x1,sixteen.y1,buff,COPY_PUT);
		  break;
	case 17 : size1=imagesize(seventeen.x1,seventeen.y1,seventeen.x2,seventeen.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(seventeen.x1,seventeen.y1,seventeen.x2,seventeen.y2,temp);
		  putimage(seventeen.x1,seventeen.y1,buff,COPY_PUT);
		  break;
	case 18 : size1=imagesize(eighteen.x1,eighteen.y1,eighteen.x2,eighteen.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
			getimage(eighteen.x1,eighteen.y1,eighteen.x2,eighteen.y2,temp);
			putimage(eighteen.x1,eighteen.y1,buff,COPY_PUT);
		  break;
	case 19 : size1=imagesize(nineteen.x1,nineteen.y1,nineteen.x2,nineteen.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(nineteen.x1,nineteen.y1,nineteen.x2,nineteen.y2,temp);
		  putimage(nineteen.x1,nineteen.y1,buff,COPY_PUT);
		  break;
	case 20 : size1=imagesize(twenty.x1,twenty.y1,twenty.x2,twenty.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(twenty.x1,twenty.y1,twenty.x2,twenty.y2,temp);
		  putimage(twenty.x1,twenty.y1,buff,COPY_PUT);
		  break;
	case 21 : size1=imagesize(twenty1.x1,twenty1.y1,twenty1.x2,twenty1.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(twenty1.x1,twenty1.y1,twenty1.x2,twenty1.y2,temp);
		  putimage(twenty1.x1,twenty1.y1,buff,COPY_PUT);
			break;
	case 22 : size1=imagesize(twenty2.x1,twenty2.y1,twenty2.x2,twenty2.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(twenty2.x1,twenty2.y1,twenty2.x2,twenty2.y2,temp);
		  putimage(twenty2.x1,twenty2.y1,buff,COPY_PUT);
		  break;
	case 23 : size1=imagesize(twenty3.x1,twenty3.y1,twenty3.x2,twenty3.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(twenty3.x1,twenty3.y1,twenty3.x2,twenty3.y2,temp);
		  putimage(twenty3.x1,twenty3.y1,buff,COPY_PUT);
		  break;
	case 24 : size1=imagesize(twenty4.x1,twenty4.y1,twenty4.x2,twenty4.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(twenty4.x1,twenty4.y1,twenty4.x2,twenty4.y2,temp);
		  putimage(twenty4.x1,twenty4.y1,buff,COPY_PUT);
		  delay(200);
		  snakesound();
			putimage(twenty4.x1,twenty4.y1,temp,COPY_PUT);
			///////for snake from 24 - 5///////
		  if (moving1==24)
		  {
		    moving1=5;
		    size1=imagesize(five.x1,five.y1,five.x2,five.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
		    getimage(five.x1,five.y1,five.x2,five.y2,temp);
		    putimage(five.x1,five.y1,buff,COPY_PUT);
		  }
		  ///////for snake from 24 - 5////////////
		  break;
	case 25 : size1=imagesize(twenty5.x1,twenty5.y1,twenty5.x2,twenty5.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(twenty5.x1,twenty5.y1,twenty5.x2,twenty5.y2,temp);
		  putimage(twenty5.x1,twenty5.y1,buff,COPY_PUT);
		  delay(200);
		  laddersound();
			putimage(twenty5.x1,twenty5.y1,temp,COPY_PUT);
			//////////for ladder from 25 - 44//////
		  if (moving1==25)
		  {
		    moving1=44;
		    size1=imagesize(fourty4.x1,fourty4.y1,fourty4.x2,fourty4.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
		    getimage(fourty4.x1,fourty4.y1,fourty4.x2,fourty4.y2,temp);
		    putimage(fourty4.x1,fourty4.y1,buff,COPY_PUT);
		  }
		  //////////for ladder from 25 - 44//////
		  break;
	case 26 : size1=imagesize(twenty6.x1,twenty6.y1,twenty6.x2,twenty6.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(twenty6.x1,twenty6.y1,twenty6.x2,twenty6.y2,temp);
		  putimage(twenty6.x1,twenty6.y1,buff,COPY_PUT);
		  break;
	case 27 : size1=imagesize(twenty7.x1,twenty7.y1,twenty7.x2,twenty7.y2);
			temp=(void *)malloc(size1);
			free(temp);
		  getimage(twenty7.x1,twenty7.y1,twenty7.x2,twenty7.y2,temp);
		  putimage(twenty7.x1,twenty7.y1,buff,COPY_PUT);
		  break;
	case 28 : size1=imagesize(twenty8.x1,twenty8.y1,twenty8.x2,twenty8.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(twenty8.x1,twenty8.y1,twenty8.x2,twenty8.y2,temp);
		  putimage(twenty8.x1,twenty8.y1,buff,COPY_PUT);
		  break;
	case 29 : size1=imagesize(twenty9.x1,twenty9.y1,twenty9.x2,twenty9.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(twenty9.x1,twenty9.y1,twenty9.x2,twenty9.y2,temp);
		  putimage(twenty9.x1,twenty9.y1,buff,COPY_PUT);
		  break;
	case 30 : size1=imagesize(one.x1,thirty.y1,thirty.x2,thirty.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
			getimage(thirty.x1,thirty.y1,thirty.x2,thirty.y2,temp);
			putimage(thirty.x1,thirty.y1,buff,COPY_PUT);
		  break;
	case 31 : size1=imagesize(thirty1.x1,thirty1.y1,thirty1.x2,thirty1.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(thirty1.x1,thirty1.y1,thirty1.x2,thirty1.y2,temp);
		  putimage(thirty1.x1,thirty1.y1,buff,COPY_PUT);
		  break;
	case 32 : size1=imagesize(thirty2.x1,thirty2.y1,thirty2.x2,thirty2.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(thirty2.x1,thirty2.y1,thirty2.x2,thirty2.y2,temp);
		  putimage(thirty2.x1,thirty2.y1,buff,COPY_PUT);
		  delay(200);
		  laddersound();
		  putimage(thirty2.x1,thirty2.y1,temp,COPY_PUT);
		  //////////for ladder 32 -53////////////
		  if (moving1==32)
		  {
				moving1=53;
				size1=imagesize(fifty3.x1,fifty3.y1,fifty3.x2,fifty3.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
		    getimage(fifty3.x1,fifty3.y1,fifty3.x2,fifty3.y2,temp);
		    putimage(fifty3.x1,fifty3.y1,buff,COPY_PUT);
		  }
		  ///////////for ladder 32 - 53
		  break;
	case 33 : size1=imagesize(thirty3.x1,thirty3.y1,thirty3.x2,thirty3.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(thirty3.x1,thirty3.y1,thirty3.x2,thirty3.y2,temp);
		  putimage(thirty3.x1,thirty3.y1,buff,COPY_PUT);
		  break;
	case 34 : size1=imagesize(thirty4.x1,thirty4.y1,thirty4.x2,thirty4.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(thirty4.x1,thirty4.y1,thirty4.x2,thirty4.y2,temp);
		  putimage(thirty4.x1,thirty4.y1,buff,COPY_PUT);
			break;
	case 35 : size1=imagesize(thirty5.x1,thirty5.y1,thirty5.x2,thirty5.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(thirty5.x1,thirty5.y1,thirty5.x2,thirty5.y2,temp);
		  putimage(thirty5.x1,thirty5.y1,buff,COPY_PUT);
		  break;
	case 36 : size1=imagesize(thirty6.x1,thirty6.y1,thirty6.x2,thirty6.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(thirty6.x1,thirty6.y1,thirty6.x2,thirty6.y2,temp);
		  putimage(thirty6.x1,thirty6.y1,buff,COPY_PUT);
		  break;
	case 37 : size1=imagesize(thirty7.x1,thirty7.y1,thirty7.x2,thirty7.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(thirty7.x1,thirty7.y1,thirty7.x2,thirty7.y2,temp);
		  putimage(thirty7.x1,thirty7.y1,buff,COPY_PUT);
		  break;
	case 38 : size1=imagesize(thirty8.x1,thirty8.y1,thirty8.x2,thirty8.y2);
			temp=(void *)malloc(size1);
			free(temp);
		  getimage(thirty8.x1,thirty8.y1,thirty8.x2,thirty8.y2,temp);
		  putimage(thirty8.x1,thirty8.y1,buff,COPY_PUT);
		  break;
	case 39 : size1=imagesize(thirty9.x1,thirty9.y1,thirty9.x2,thirty9.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(thirty9.x1,thirty9.y1,thirty9.x2,thirty9.y2,temp);
		  putimage(thirty9.x1,thirty9.y1,buff,COPY_PUT);
		  delay(200);
		  snakesound();
		  putimage(thirty9.x1,thirty9.y1,temp,COPY_PUT);
		  ///////snake from 39 - 20////////////
		  if (moving1==39)
		  {
		    moving1=20;
		    size1=imagesize(twenty.x1,twenty.y1,twenty.x2,twenty.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
				getimage(twenty.x1,twenty.y1,twenty.x2,twenty.y2,temp);
				putimage(twenty.x1,twenty.y1,buff,COPY_PUT);
		  }
		  ///////snake from 39 - 20////////////
		  break;
	case 40 : size1=imagesize(fourty.x1,fourty.y1,fourty.x2,fourty.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fourty.x1,fourty.y1,fourty.x2,fourty.y2,temp);
		  putimage(fourty.x1,fourty.y1,buff,COPY_PUT);
		  break;
	case 41 : size1=imagesize(fourty1.x1,fourty1.y1,fourty1.x2,fourty1.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fourty1.x1,fourty1.y1,fourty1.x2,fourty1.y2,temp);
		  putimage(fourty1.x1,fourty1.y1,buff,COPY_PUT);
		  break;
	case 42 : size1=imagesize(fourty2.x1,fourty2.y1,fourty2.x2,fourty2.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
			getimage(fourty2.x1,fourty2.y1,fourty2.x2,fourty2.y2,temp);
			putimage(fourty2.x1,fourty2.y1,buff,COPY_PUT);
		  break;
	case 43 : size1=imagesize(fourty3.x1,fourty3.y1,fourty3.x2,fourty3.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fourty3.x1,fourty3.y1,fourty3.x2,fourty3.y2,temp);
		  putimage(fourty3.x1,fourty3.y1,buff,COPY_PUT);
		  break;
	case 44 : size1=imagesize(fourty4.x1,fourty4.y1,fourty4.x2,fourty4.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fourty4.x1,fourty4.y1,fourty4.x2,fourty4.y2,temp);
		  putimage(fourty4.x1,fourty4.y1,buff,COPY_PUT);
		  break;
	case 45 : size1=imagesize(fourty5.x1,fourty5.y1,fourty5.x2,fourty5.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fourty5.x1,fourty5.y1,fourty5.x2,fourty5.y2,temp);
		  putimage(fourty5.x1,fourty5.y1,buff,COPY_PUT);
			break;
	case 46 : size1=imagesize(fourty6.x1,fourty6.y1,fourty6.x2,fourty6.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fourty6.x1,fourty6.y1,fourty6.x2,fourty6.y2,temp);
		  putimage(fourty6.x1,fourty6.y1,buff,COPY_PUT);
		  break;
	case 47 : size1=imagesize(fourty7.x1,fourty7.y1,fourty7.x2,fourty7.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fourty7.x1,fourty7.y1,fourty7.x2,fourty7.y2,temp);
		  putimage(fourty7.x1,fourty7.y1,buff,COPY_PUT);
		  delay(200);
		  snakesound();
		  putimage(fourty7.x1,fourty7.y1,temp,COPY_PUT);
		  ///////////for snake from 47 - 14 ////////////
		  if (moving1==47)
		  {
		    moving1=14;
		    size1=imagesize(fourteen.x1,fourteen.y1,fourteen.x2,fourteen.y2);
				temp=(void *)malloc(size1);
				free(temp);
		    getimage(fourteen.x1,fourteen.y1,fourteen.x2,fourteen.y2,temp);
		    putimage(fourteen.x1,fourteen.y1,buff,COPY_PUT);
		  }
		  ///////////for snake from 47 - 14 ////////////
		  break;
	case 48 : size1=imagesize(fourty8.x1,fourty8.y1,fourty8.x2,fourty8.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fourty8.x1,fourty8.y1,fourty8.x2,fourty8.y2,temp);
		  putimage(fourty8.x1,fourty8.y1,buff,COPY_PUT);
		  break;
	case 49 : size1=imagesize(fourty9.x1,fourty9.y1,fourty9.x2,fourty9.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fourty9.x1,fourty9.y1,fourty9.x2,fourty9.y2,temp);
		  putimage(fourty9.x1,fourty9.y1,buff,COPY_PUT);
		  break;
	case 50 : size1=imagesize(fifty.x1,fifty.y1,fifty.x2,fifty.y2);
			temp=(void *)malloc(size1);
			free(temp);
		  getimage(fifty.x1,fifty.y1,fifty.x2,fifty.y2,temp);
		  putimage(fifty.x1,fifty.y1,buff,COPY_PUT);
		  break;
	case 51 : size1=imagesize(fifty1.x1,fifty1.y1,fifty1.x2,fifty1.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fifty1.x1,fifty1.y1,fifty1.x2,fifty1.y2,temp);
		  putimage(fifty1.x1,fifty1.y1,buff,COPY_PUT);
		  delay(200);
		  laddersound();
		  putimage(fifty1.x1,fifty1.y1,temp,COPY_PUT);
		  //////////for ladder 51 -72////////////
		  if (moving1==51)
		  {
		    moving1=72;
		    size1=imagesize(seventy2.x1,seventy2.y1,seventy2.x2,seventy2.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
				getimage(seventy2.x1,seventy2.y1,seventy2.x2,seventy2.y2,temp);
				putimage(seventy2.x1,seventy2.y1,buff,COPY_PUT);
		  }
		  ///////////for ladder 51 - 72
		  break;
	case 52 : size1=imagesize(fifty2.x1,fifty2.y1,fifty2.x2,fifty2.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fifty2.x1,fifty2.y1,fifty2.x2,fifty2.y2,temp);
		  putimage(fifty2.x1,fifty2.y1,buff,COPY_PUT);
		  break;
	case 53 : size1=imagesize(fifty3.x1,fifty3.y1,fifty3.x2,fifty3.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fifty3.x1,fifty3.y1,fifty3.x2,fifty3.y2,temp);
		  putimage(fifty3.x1,fifty3.y1,buff,COPY_PUT);
		  break;
	case 54 : size1=imagesize(fifty4.x1,fifty4.y1,fifty4.x2,fifty4.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
			getimage(fifty4.x1,fifty4.y1,fifty4.x2,fifty4.y2,temp);
			putimage(fifty4.x1,fifty4.y1,buff,COPY_PUT);
		  break;
	case 55 : size1=imagesize(fifty5.x1,fifty5.y1,fifty5.x2,fifty5.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fifty5.x1,fifty5.y1,fifty5.x2,fifty5.y2,temp);
		  putimage(fifty5.x1,fifty5.y1,buff,COPY_PUT);
		  delay(200);
		  snakesound();
		  putimage(fifty5.x1,fifty5.y1,temp,COPY_PUT);
		  ///////for snake from 55 - 35///////
		  if (moving1==55)
		  {
		    moving1=35;
		    size1=imagesize(thirty5.x1,thirty5.y1,thirty5.x2,thirty5.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
		    getimage(thirty5.x1,thirty5.y1,thirty5.x2,thirty5.y2,temp);
		    putimage(thirty5.x1,thirty5.y1,buff,COPY_PUT);
			}
			///////for snake from 55 - 35////////////
		  break;
	case 56 : size1=imagesize(fifty6.x1,fifty6.y1,fifty6.x2,fifty6.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fifty6.x1,fifty6.y1,fifty6.x2,fifty6.y2,temp);
		  putimage(fifty6.x1,fifty6.y1,buff,COPY_PUT);
		  break;
	case 57 : size1=imagesize(fifty7.x1,fifty7.y1,fifty7.x2,fifty7.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fifty7.x1,fifty7.y1,fifty7.x2,fifty7.y2,temp);
		  putimage(fifty7.x1,fifty7.y1,buff,COPY_PUT);
		  break;
	case 58 : size1=imagesize(fifty8.x1,fifty8.y1,fifty8.x2,fifty8.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fifty8.x1,fifty8.y1,fifty8.x2,fifty8.y2,temp);
		  putimage(fifty8.x1,fifty8.y1,buff,COPY_PUT);
			delay(200);
			laddersound();
		  putimage(fifty8.x1,fifty8.y1,temp,COPY_PUT);
		  //////////for ladder 58 -65////////////
		  if (moving1==58)
		  {
		    moving1=65;
		    size1=imagesize(sixty5.x1,sixty5.y1,sixty5.x2,sixty5.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
		    getimage(sixty5.x1,sixty5.y1,sixty5.x2,sixty5.y2,temp);
		    putimage(sixty5.x1,sixty5.y1,buff,COPY_PUT);
		  }
		  ///////////for ladder 58 - 65 //////////////
		  break;
	case 59 : size1=imagesize(fifty9.x1,fifty9.y1,fifty9.x2,fifty9.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(fifty9.x1,fifty9.y1,fifty9.x2,fifty9.y2,temp);
		  putimage(fifty9.x1,fifty9.y1,buff,COPY_PUT);
			break;
	case 60 : size1=imagesize(sixty.x1,sixty.y1,sixty.x2,sixty.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(sixty.x1,sixty.y1,sixty.x2,sixty.y2,temp);
		  putimage(sixty.x1,sixty.y1,buff,COPY_PUT);
		  delay(200);
		  laddersound();
		  putimage(sixty.x1,sixty.y1,temp,COPY_PUT);
		  //////////for ladder 60 -79////////////
		  if (moving1==60)
		  {
		    moving1=79;
		    size1=imagesize(seventy9.x1,seventy9.y1,seventy9.x2,seventy9.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
		    getimage(seventy9.x1,seventy9.y1,seventy9.x2,seventy9.y2,temp);
		    putimage(seventy9.x1,seventy9.y1,buff,COPY_PUT);
		  }
		  ///////////for ladder 60 - 79
			break;
	case 61 : size1=imagesize(sixty1.x1,sixty1.y1,sixty1.x2,sixty1.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(sixty1.x1,sixty1.y1,sixty1.x2,sixty1.y2,temp);
		  putimage(sixty1.x1,sixty1.y1,buff,COPY_PUT);
		  break;
	case 62 : size1=imagesize(sixty2.x1,sixty2.y1,sixty2.x2,sixty2.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(sixty2.x1,sixty2.y1,sixty2.x2,sixty2.y2,temp);
		  putimage(sixty2.x1,sixty2.y1,buff,COPY_PUT);
		  break;
	case 63 : size1=imagesize(sixty3.x1,sixty3.y1,sixty3.x2,sixty3.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(sixty3.x1,sixty3.y1,sixty3.x2,sixty3.y2,temp);
		  putimage(sixty3.x1,sixty3.y1,buff,COPY_PUT);
		  break;
	case 64 : size1=imagesize(sixty4.x1,sixty4.y1,sixty4.x2,sixty4.y2);
			temp=(void *)malloc(size1);
			free(temp);
		  getimage(sixty4.x1,sixty4.y1,sixty4.x2,sixty4.y2,temp);
		  putimage(sixty4.x1,sixty4.y1,buff,COPY_PUT);
		  break;
	case 65 : size1=imagesize(sixty5.x1,sixty5.y1,sixty5.x2,sixty5.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(sixty5.x1,sixty5.y1,sixty5.x2,sixty5.y2,temp);
		  putimage(sixty5.x1,sixty5.y1,buff,COPY_PUT);
		  break;
	case 66 : size1=imagesize(sixty6.x1,sixty6.y1,sixty6.x2,sixty6.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(sixty6.x1,sixty6.y1,sixty6.x2,sixty6.y2,temp);
		  putimage(sixty6.x1,sixty6.y1,buff,COPY_PUT);
		  delay(200);
		  laddersound();
		  putimage(sixty6.x1,sixty6.y1,temp,COPY_PUT);
		  //////////for ladder 66 -87////////////
			if (moving1==66)
			{
		    moving1=87;
		    size1=imagesize(eighty7.x1,eighty7.y1,eighty7.x2,eighty7.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
		    getimage(eighty7.x1,eighty7.y1,eighty7.x2,eighty7.y2,temp);
		    putimage(eighty7.x1,eighty7.y1,buff,COPY_PUT);
		  }
		  ///////////for ladder 66 - 87 ///////////
		  break;
	case 67 : size1=imagesize(sixty7.x1,sixty7.y1,sixty7.x2,sixty7.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(sixty7.x1,sixty7.y1,sixty7.x2,sixty7.y2,temp);
		  putimage(sixty7.x1,sixty7.y1,buff,COPY_PUT);
		  break;
	case 68 : size1=imagesize(sixty8.x1,sixty8.y1,sixty8.x2,sixty8.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
			getimage(sixty8.x1,sixty8.y1,sixty8.x2,sixty8.y2,temp);
			putimage(sixty8.x1,sixty8.y1,buff,COPY_PUT);
		  break;
	case 69 : size1=imagesize(sixty9.x1,sixty9.y1,sixty9.x2,sixty9.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(sixty9.x1,sixty9.y1,sixty9.x2,sixty9.y2,temp);
		  putimage(sixty9.x1,sixty9.y1,buff,COPY_PUT);
		  break;
	case 70 : size1=imagesize(seventy.x1,seventy.y1,seventy.x2,seventy.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(seventy.x1,seventy.y1,seventy.x2,seventy.y2,temp);
		  putimage(seventy.x1,seventy.y1,buff,COPY_PUT);
		  break;
	case 71 : size1=imagesize(seventy1.x1,seventy1.y1,seventy1.x2,seventy1.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(seventy1.x1,seventy1.y1,seventy1.x2,seventy1.y2,temp);
		  putimage(seventy1.x1,seventy1.y1,buff,COPY_PUT);
			break;
	case 72 : size1=imagesize(seventy2.x1,seventy2.y1,seventy2.x2,seventy2.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(seventy2.x1,seventy2.y1,seventy2.x2,seventy2.y2,temp);
		  putimage(seventy2.x1,seventy2.y1,buff,COPY_PUT);
		  break;
	case 73 : size1=imagesize(seventy3.x1,seventy3.y1,seventy3.x2,seventy3.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(seventy3.x1,seventy3.y1,seventy3.x2,seventy3.y2,temp);
		  putimage(seventy3.x1,seventy3.y1,buff,COPY_PUT);
		  break;
	case 74 : size1=imagesize(seventy4.x1,seventy4.y1,seventy4.x2,seventy4.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(seventy4.x1,seventy4.y1,seventy4.x2,seventy4.y2,temp);
		  putimage(seventy4.x1,seventy4.y1,buff,COPY_PUT);
		  break;
	case 75 : size1=imagesize(seventy5.x1,seventy5.y1,seventy5.x2,seventy5.y2);
			temp=(void *)malloc(size1);
			free(temp);
		  getimage(seventy5.x1,seventy5.y1,seventy5.x2,seventy5.y2,temp);
		  putimage(seventy5.x1,seventy5.y1,buff,COPY_PUT);
		  break;
	case 76 : size1=imagesize(seventy6.x1,seventy6.y1,seventy6.x2,seventy6.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(seventy6.x1,seventy6.y1,seventy6.x2,seventy6.y2,temp);
		  putimage(seventy6.x1,seventy6.y1,buff,COPY_PUT);
		  break;
	case 77 : size1=imagesize(seventy7.x1,seventy7.y1,seventy7.x2,seventy7.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(seventy7.x1,seventy7.y1,seventy7.x2,seventy7.y2,temp);
		  putimage(seventy7.x1,seventy7.y1,buff,COPY_PUT);
		  delay(200);
		  laddersound();
		  putimage(seventy7.x1,seventy7.y1,temp,COPY_PUT);
		  //////////for ladder 77 -98////////////
			if (moving1==77)
			{
		    moving1=98;
		    size1=imagesize(ninty8.x1,ninty8.y1,ninty8.x2,ninty8.y2);
		    temp=(void *)malloc(size1);
		    free(temp);
		    getimage(ninty8.x1,ninty8.y1,ninty8.x2,ninty8.y2,temp);
		    putimage(ninty8.x1,ninty8.y1,buff,COPY_PUT);
		  }
		  ///////////for ladder 77 - 98
		  break;
	case 78 : size1=imagesize(seventy8.x1,seventy8.y1,seventy8.x2,seventy8.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
		  getimage(seventy8.x1,seventy8.y1,seventy8.x2,seventy8.y2,temp);
		  putimage(seventy8.x1,seventy8.y1,buff,COPY_PUT);
		  break;
	case 79 : size1=imagesize(seventy9.x1,seventy9.y1,seventy9.x2,seventy9.y2);
		  temp=(void *)malloc(size1);
		  free(temp);
			getimage(seventy9.x1,seventy9.y1,seventy9.x2,seventy9.y2,temp);
			putimage(seventy9.x1,seventy9.y1,buff,COPY_PUT);
			break;
	case 80 : size1=imagesize(eighty.x1,eighty.y1,eighty.x2,eighty.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(eighty.x1,eighty.y1,eighty.x2,eighty.y2,temp);
			putimage(eighty.x1,eighty.y1,buff,COPY_PUT);
			break;
	case 81 : size1=imagesize(eighty1.x1,eighty1.y1,eighty1.x2,eighty1.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(eighty1.x1,eighty1.y1,eighty1.x2,eighty1.y2,temp);
			putimage(eighty1.x1,eighty1.y1,buff,COPY_PUT);
			break;
	case 82 : size1=imagesize(eighty2.x1,eighty2.y1,eighty2.x2,eighty2.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(eighty2.x1,eighty2.y1,eighty2.x2,eighty2.y2,temp);
			putimage(eighty2.x1,eighty2.y1,buff,COPY_PUT);
			break;
	case 83 : size1=imagesize(eighty3.x1,eighty3.y1,eighty3.x2,eighty3.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(eighty3.x1,eighty3.y1,eighty3.x2,eighty3.y2,temp);
			putimage(eighty3.x1,eighty3.y1,buff,COPY_PUT);
			break;
	case 84 : size1=imagesize(eighty4.x1,eighty4.y1,eighty4.x2,eighty4.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(eighty4.x1,eighty4.y1,eighty4.x2,eighty4.y2,temp);
			putimage(eighty4.x1,eighty4.y1,buff,COPY_PUT);
			break;
	case 85 : size1=imagesize(eighty5.x1,eighty5.y1,eighty5.x2,eighty5.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(eighty5.x1,eighty5.y1,eighty5.x2,eighty5.y2,temp);
			putimage(eighty5.x1,eighty5.y1,buff,COPY_PUT);
			break;
	case 86 : size1=imagesize(eighty6.x1,eighty6.y1,eighty6.x2,eighty6.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(eighty6.x1,eighty6.y1,eighty6.x2,eighty6.y2,temp);
			putimage(eighty6.x1,eighty6.y1,buff,COPY_PUT);
			break;
	case 87 : size1=imagesize(eighty7.x1,eighty7.y1,eighty7.x2,eighty7.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(eighty7.x1,eighty7.y1,eighty7.x2,eighty7.y2,temp);
			putimage(eighty7.x1,eighty7.y1,buff,COPY_PUT);
			break;
	case 88 : size1=imagesize(eighty8.x1,eighty8.y1,eighty8.x2,eighty8.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(eighty8.x1,eighty8.y1,eighty8.x2,eighty8.y2,temp);
			putimage(eighty8.x1,eighty8.y1,buff,COPY_PUT);
			delay(200);
			snakesound();
			putimage(eighty8.x1,eighty8.y1,temp,COPY_PUT);
			///////for snake from 88 - 54///////
			if (moving1==88)
			{
				moving1=54;
				size1=imagesize(fifty4.x1,fifty4.y1,fifty4.x2,fifty4.y2);
				temp=(void *)malloc(size1);
				free(temp);
				getimage(fifty4.x1,fifty4.y1,fifty4.x2,fifty4.y2,temp);
				putimage(fifty4.x1,fifty4.y1,buff,COPY_PUT);
			}
			///////for snake from 88 - 54////////////
			break;
	case 89 : size1=imagesize(eighty9.x1,eighty9.y1,eighty9.x2,eighty9.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(eighty9.x1,eighty9.y1,eighty9.x2,eighty9.y2,temp);
			putimage(eighty9.x1,eighty9.y1,buff,COPY_PUT);
			break;
	case 90 : size1=imagesize(ninty.x1,ninty.y1,ninty.x2,ninty.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(ninty.x1,ninty.y1,ninty.x2,ninty.y2,temp);
			putimage(ninty.x1,ninty.y1,buff,COPY_PUT);
			break;
	case 91 : size1=imagesize(ninty1.x1,ninty1.y1,ninty1.x2,ninty1.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(ninty1.x1,ninty1.y1,ninty1.x2,ninty1.y2,temp);
			putimage(ninty1.x1,ninty1.y1,buff,COPY_PUT);
			break;
	case 92 : size1=imagesize(ninty2.x1,ninty2.y1,ninty2.x2,ninty2.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(ninty2.x1,ninty2.y1,ninty2.x2,ninty2.y2,temp);
			putimage(ninty2.x1,ninty2.y1,buff,COPY_PUT);
			delay(200);
			snakesound();
			putimage(ninty2.x1,ninty2.y1,temp,COPY_PUT);
			///////for snake from 92 - 71///////
			if (moving1==92)
			{
				moving1=71;
				size1=imagesize(seventy1.x1,seventy1.y1,seventy1.x2,seventy1.y2);
				temp=(void *)malloc(size1);
				free(temp);
				getimage(seventy1.x1,seventy1.y1,seventy1.x2,seventy1.y2,temp);
				putimage(seventy1.x1,seventy1.y1,buff,COPY_PUT);
			}
			///////for snake from 92 - 71////////////
			break;
	case 93 : size1=imagesize(ninty3.x1,ninty3.y1,ninty3.x2,ninty3.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(ninty3.x1,ninty3.y1,ninty3.x2,ninty3.y2,temp);
			putimage(ninty3.x1,ninty3.y1,buff,COPY_PUT);
			break;
	case 94 : size1=imagesize(ninty4.x1,ninty4.y1,ninty4.x2,ninty4.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(ninty4.x1,ninty4.y1,ninty4.x2,ninty4.y2,temp);
			putimage(ninty4.x1,ninty4.y1,buff,COPY_PUT);
			break;
	case 95 : putimage(ninty5.x1,ninty5.y1,buff,COPY_PUT);
			break;
	case 96 : size1=imagesize(ninty6.x1,ninty6.y1,ninty6.x2,ninty6.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(ninty6.x1,ninty6.y1,ninty6.x2,ninty6.y2,temp);
			putimage(ninty6.x1,ninty6.y1,buff,COPY_PUT);
			delay(200);
			snakesound();
			putimage(ninty6.x1,ninty6.y1,temp,COPY_PUT);
			///////for snake from 96 - 76///////
			if (moving1==96)
			{
				moving1=76;
				size1=imagesize(seventy6.x1,seventy6.y1,seventy6.x2,seventy6.y2);
				temp=(void *)malloc(size1);
				free(temp);
				getimage(seventy6.x1,seventy6.y1,seventy6.x2,seventy6.y2,temp);
				putimage(seventy6.x1,seventy6.y1,buff,COPY_PUT);
			}
			///////for snake from 96 - 76////////////
			break;
	case 97 : putimage(ninty7.x1,ninty7.y1,buff,COPY_PUT);
			break;
	case 98 : putimage(ninty8.x1,ninty8.y1,buff,COPY_PUT);
			break;
	case 99 : size1=imagesize(ninty9.x1,ninty9.y1,ninty9.x2,ninty9.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(ninty9.x1,ninty9.y1,ninty9.x2,ninty9.y2,temp);
			putimage(ninty9.x1,ninty9.y1,buff,COPY_PUT);
			delay(200);
			snakesound();
			putimage(ninty9.x1,ninty9.y1,temp,COPY_PUT);
			///////snake from 99 - 43////////////
			if (moving1==99)
			{
				moving1=43;
				size1=imagesize(fourty3.x1,fourty3.y1,fourty3.x2,fourty3.y2);
				temp=(void *)malloc(size1);
				free(temp);
				getimage(fourty3.x1,fourty3.y1,fourty3.x2,fourty3.y2,temp);
				putimage(fourty3.x1,fourty3.y1,buff,COPY_PUT);
			}
			///////snake from 99 - 43////////////
			break;
	case 100 :size1=imagesize(hundred.x1,hundred.y1,hundred.x2,hundred.y2);
			temp=(void *)malloc(size1);
			free(temp);
			getimage(hundred.x1,hundred.y1,hundred.x2,hundred.y2,temp);
			putimage(hundred.x1,hundred.y1,buff,COPY_PUT);
			delay(200);
			sound(2460);
			delay(100);
			nosound();
			break;
			}///closing of second switch
		}///////closing of if////
		 last=moving1;
		 ch='a';
	 }while(moving1<99);////end of while///
	 cleardevice();
	 congragulation();
	 getch();
}//////end of void main(void)
///////////////////////////////////////////////////////////////////////////
///////////////////////////////functions////////////////////////////////////
///////////functions of snakes//////////////////////////
void startsnakeladder(void)
{
	 int xa,ya;
	 ///////////////////starting lines//////
	 for (int l1=0;l1<640;l1++)
	 {
		 setlinestyle(0,2,3);
		 setcolor(9);
		 line(l1,0,l1+1,0);
		 delay(1);
	 }
	 for (int l2=0;l2<480;l2++)
	 {
		 setlinestyle(0,2,3);
		 setcolor(9);
		 line(639,l2,639,l2+1);
		 delay(1);
	 }
	 for (int l3=639;l3>0;l3--)
	 {
		 setlinestyle(0,2,3);
		 setcolor(9);
		 line(l3,479,l3+1,479);
		 delay(1);
	 }
	 for (int l4=479;l4>0;l4--)
	 {
		 setlinestyle(0,2,3);
		 setcolor(9);
		 line(0,l4,0,l4+1);
		 delay(1);
	 }
		 for (int a=1;a<1000;a++)
	 {
		 xa=random(650);
		 ya=random(600);
		 //delay(1);
		 putpixel(xa,ya,random(16));
	 }
	 setlinestyle(0,0,0);
	 ///////////starting snake////////////////
	 setcolor(RED);
	 arc(233-30,345-160,120,230,40);  ///////first arc
	 arc(188-30,385-160,310,50,20);   //////tail arc
	 arc(237-30,345-160,120,230,30);  //////second arc
	 arc(194-30,378-160,295,50,25);   //////second tail arc
	 line(205-30,400-160,189-20,403-160);  ////tail
	 ////line from first arc to mouth////////////
	 line(213-30,311-160,230-30,308-160);
	 line(224-30,314-160,230-30,308-160);
	 line(224-30,314-160,232-30,313-160);
	 line(221-30,320-160,232-30,313-160);
	 ////////tounge/////////////
	 setcolor(LIGHTRED);
	 line(227-30,313-160,236-30,310-160);
	 //////////eye of snake////////////
	 setcolor(GREEN);
	 circle(214-30,308-160,2);
	 setfillstyle(2,RED);
	 floodfill(214-30,308-160,GREEN);
	 /////FILL COLOR/////////
	 setfillstyle(1,GREEN);
	 floodfill(201-30,349-160,RED);
	 ///////////////////////starting ladder /////////////////////////////
	 setcolor(GREEN);
	 setlinestyle(0,2,3);
	 line(266,340,266,234);
	 line(298,234,298,340);
	 line(266,251,298,251);
	 line(266,324,298,324);
	 setlinestyle(0,0,0);
	 setfillstyle(2,RED);
	 floodfill(286,284,GREEN);
	 //////////description//////
	 moveto(160,110);
	 settextstyle(3,HORIZ_DIR,1);
	 outtextxy(400,10,"Project By::");
	 outtextxy(400,30,"--------------------");
	 outtextxy(400,50,"GC Muzammil Hussain");
	 outtextxy(400,70,"GC Qaiser");
	 outtextxy(400,90,"GC Hassan KHalid");
	 outtextxy(410,110,"(TGC-18)");
	 setcolor(LIGHTGREEN);
	 settextstyle(GOTHIC_FONT,HORIZ_DIR,6);
	 setusercharsize(2,0,7,2);
	 outtext(" nake &");
	 moveto(280,230);
	 outtext(" adder");
	 settextstyle(4,HORIZ_DIR,2);
	 moveto(140,400);
	 outtext("Press Any Key To Continue");
}

void loading(void)
{
	 settextstyle(0,HORIZ_DIR,1);
	 setcolor(RED);
	 moveto(230,440);
	 outtext("Loading Plz Wait");
	 rectangle(230,460,355,468);
	 for (int a=1;a<=123;a++)
	 {
		 delay(50);
		 moveto(228+a,461);
		 outtext("I");
	 }
}

void box(void)
{
//////////////starting signal//////////////
	setcolor(DARKGRAY);
	circle(196,430,6);
	setfillstyle(1,RED);
	floodfill(196,435,DARKGRAY);

	setcolor(DARKGRAY);
	circle(196,443,6);
	setfillstyle(1,YELLOW);
	floodfill(196,443,DARKGRAY);

	setcolor(DARKGRAY);
	circle(196,456,6);
	setfillstyle(1,GREEN);
	floodfill(196,456,DARKGRAY);

	rectangle(187,422,205,464);

	//////////////10th line///////////////
	setcolor(LIGHTBLUE);
	setlinestyle(0,2,3);
	rectangle(173,6,219,52);
	rectangle(219,6,265,52);
	rectangle(265,6,311,52);
	rectangle(311,6,357,52);
	rectangle(357,6,403,52);
	rectangle(403,6,449,52);
	rectangle(449,6,495,52);
	rectangle(495,6,541,52);
	rectangle(541,6,587,52);
	rectangle(587,6,633,52);
	///////////9th line///////////////////
	rectangle(173,52,219,98);
	rectangle(219,52,265,98);
	rectangle(265,52,311,98);
	rectangle(311,52,357,98);
	rectangle(357,52,403,98);
	rectangle(403,52,449,98);
	rectangle(449,52,495,98);
	rectangle(495,52,541,98);
	rectangle(541,52,587,98);
	rectangle(587,52,633,98);
	//////////8th line//////////////////
	rectangle(173,98,219,144);
	rectangle(219,98,265,144);
	rectangle(265,98,311,144);
	rectangle(311,98,357,144);
	rectangle(357,98,403,144);
	rectangle(403,98,449,144);
	rectangle(449,98,495,144);
	rectangle(495,98,541,144);
	rectangle(541,98,587,144);
	rectangle(587,98,633,144);
	/////////7th line//////////////////
	rectangle(173,144,219,190);
	rectangle(219,144,265,190);
	rectangle(265,144,311,190);
	rectangle(311,144,357,190);
	rectangle(357,144,403,190);
	rectangle(403,144,449,190);
	rectangle(449,144,495,190);
	rectangle(495,144,541,190);
	rectangle(541,144,587,190);
	rectangle(587,144,633,190);
	//////////6th line/////////////////
	rectangle(173,190,219,236);
	rectangle(219,190,265,236);
	rectangle(265,190,311,236);
	rectangle(311,190,357,236);
	rectangle(357,190,403,236);
	rectangle(403,190,449,236);
	rectangle(449,190,495,236);
	rectangle(495,190,541,236);
	rectangle(541,190,587,236);
	rectangle(587,190,633,236);
	///////////5th line//////////////////
	rectangle(173,236,219,282);
	rectangle(219,236,265,282);
	rectangle(265,236,311,282);
	rectangle(311,236,357,282);
	rectangle(357,236,403,282);
	rectangle(403,236,449,282);
	rectangle(449,236,495,282);
	rectangle(495,236,541,282);
	rectangle(541,236,587,282);
	rectangle(587,236,633,282);
	//////////4th line//////////////////
	rectangle(173,282,219,328);
	rectangle(219,282,265,328);
	rectangle(265,282,311,328);
	rectangle(311,282,357,328);
	rectangle(357,282,403,328);
	rectangle(403,282,449,328);
	rectangle(449,282,495,328);
	rectangle(495,282,541,328);
	rectangle(541,282,587,328);
	rectangle(587,282,633,328);
	//////////3rd line//////////////////
	rectangle(173,328,219,374);
	rectangle(219,328,265,374);
	rectangle(265,328,311,374);
	rectangle(311,328,357,374);
	rectangle(357,328,403,374);
	rectangle(403,328,449,374);
	rectangle(449,328,495,374);
	rectangle(495,328,541,374);
	rectangle(541,328,587,374);
	rectangle(587,328,633,374);
	//////////2nd line//////////////////
	rectangle(173,374,219,420);
	rectangle(219,374,265,420);
	rectangle(265,374,311,420);
	rectangle(311,374,357,420);
	rectangle(357,374,403,420);
	rectangle(403,374,449,420);
	rectangle(449,374,495,420);
	rectangle(495,374,541,420);
	rectangle(541,374,587,420);
	rectangle(587,374,633,420);
	//////////1st line//////////////////
	rectangle(173,420,219,466);/////1st
	rectangle(219,420,265,466);/////2nd
	rectangle(265,420,311,466);/////3rd
	rectangle(311,420,357,466);/////4th
	rectangle(357,420,403,466);/////5th
	rectangle(403,420,449,466);/////6th
	rectangle(449,420,495,466);/////7th
	rectangle(495,420,541,466);/////8th
	rectangle(541,420,587,466);/////9th
	rectangle(587,420,633,466);/////10th
	setlinestyle(0,0,0);
	//////////////////cup///////////////////
	setcolor(YELLOW);
	rectangle(188,41,204,49);
	rectangle(194,41,198,29);
	rectangle(185,10,207,11);
	rectangle(182,15,187,16);
	rectangle(182,16,183,21);
	rectangle(184,21,189,20);
	rectangle(205,15,210,16);
	rectangle(210,17,209,21);
	rectangle(208,21,203,20);
	line(185,12,192,29);
	line(192,29,200,29);
	line(200,29,207,12);
	setfillstyle(1,BROWN);
	floodfill(198,14,YELLOW);
	floodfill(196,34,YELLOW);
}

void numbers (void)
{
	/////////////heading/////////////////
	moveto(0,0);
	setcolor(LIGHTGREEN);
	settextstyle(GOTHIC_FONT,HORIZ_DIR,6);
	setusercharsize(1,1,5,2);
	outtext("Snake &");
	moveto(55,60);
	outtext("Ladder");
	rectangle(7,4,33,21);
	setcolor(WHITE);
	line(12,10,27,16);
	line(27,10,12,16);
	//////////////////////0-100////////////////////////////////////////////////
	setcolor(CYAN);
	settextstyle( GOTHIC_FONT,HORIZ_DIR,1);
	///////////////100-91/////////////////
	moveto(232,15);outtext("99");
	moveto(278,15);outtext("98");
	moveto(324,15);outtext("97");
	moveto(370,15);outtext("96");
	moveto(416,15);outtext("95");
	moveto(462,15);outtext("94");
	moveto(508,15);outtext("93");
	moveto(554,15);outtext("92");
	moveto(600,15);outtext("91");
	///////////////81-90/////////////////
  moveto(186,60);outtext("81");
  moveto(232,60);outtext("82");
  moveto(278,60);outtext("83");
  moveto(324,60);outtext("84");
  moveto(370,60);outtext("85");
  moveto(416,60);outtext("86");
  moveto(462,60);outtext("87");
  moveto(508,60);outtext("88");
  moveto(554,60);outtext("89");
  moveto(600,60);outtext("90");
  ///////////////80-71/////////////////
	moveto(186,105);outtext("80");
  moveto(232,105);outtext("79");
  moveto(278,105);outtext("78");
  moveto(324,105);outtext("77");
  moveto(370,105);outtext("76");
  moveto(416,105);outtext("75");
  moveto(462,105);outtext("74");
	moveto(508,105);outtext("73");
  moveto(554,105);outtext("72");
  moveto(600,105);outtext("71");
  ///////////////61-70/////////////////
  moveto(186,150);outtext("61");
  moveto(232,150);outtext("62");
  moveto(278,150);outtext("63");
  moveto(324,150);outtext("64");
  moveto(370,150);outtext("65");
  moveto(416,150);outtext("66");
  moveto(462,150);outtext("67");
  moveto(508,150);outtext("68");
  moveto(554,150);outtext("69");
	moveto(600,150);outtext("70");
  ///////////////60-51/////////////////
  moveto(186,198);outtext("60");
  moveto(232,198);outtext("59");
  moveto(278,198);outtext("58");
  moveto(324,198);outtext("57");
  moveto(370,198);outtext("56");
	moveto(416,198);outtext("55");
  moveto(462,198);outtext("54");
  moveto(508,198);outtext("53");
  moveto(554,198);outtext("52");
  moveto(600,198);outtext("51");
  ///////////////41-50/////////////////
  moveto(186,243);outtext("41");
  moveto(232,243);outtext("42");
  moveto(278,243);outtext("43");
  moveto(324,243);outtext("44");
  moveto(370,243);outtext("45");
  moveto(416,243);outtext("46");
  moveto(462,243);outtext("47");
	moveto(508,243);outtext("48");
  moveto(554,243);outtext("49");
  moveto(600,243);outtext("50");
  ///////////////40-31/////////////////
  moveto(186,290);outtext("40");
  moveto(232,290);outtext("39");
  moveto(278,290);outtext("38");
	moveto(324,290);outtext("37");
  moveto(370,290);outtext("36");
  moveto(416,290);outtext("35");
  moveto(462,290);outtext("34");
  moveto(508,290);outtext("33");
  moveto(554,290);outtext("32");
  moveto(600,290);outtext("31");
  ///////////////21-30/////////////////
  moveto(186,335);outtext("21");
  moveto(232,335);outtext("22");
  moveto(278,335);outtext("23");
  moveto(324,335);outtext("24");
  moveto(370,335);outtext("25");
	moveto(416,335);outtext("26");
  moveto(462,335);outtext("27");
  moveto(508,335);outtext("28");
  moveto(554,335);outtext("29");
  moveto(600,335);outtext("30");
  ///////////////20-11/////////////////
  moveto(186,382);outtext("20");
	moveto(232,382);outtext("19");
  moveto(278,382);outtext("18");
  moveto(324,382);outtext("17");
  moveto(370,382);outtext("16");
  moveto(416,382);outtext("15");
  moveto(462,382);outtext("14");
  moveto(508,382);outtext("13");
  moveto(554,382);outtext("12");
  moveto(600,382);outtext("11");
  ///////////////1-10/////////////////
  moveto(240,430);outtext("2");
  moveto(285,430);outtext("3");
  moveto(330,430);outtext("4");
	moveto(378,430);outtext("5");
  moveto(424,430);outtext("6");
  moveto(470,430);outtext("7");
  moveto(515,430);outtext("8");
  moveto(560,430);outtext("9");
  moveto(600,430);outtext("10");
}

void redpiece(void)
{
  ///////for red piece//////
  setcolor(LIGHTBLUE);
  setlinestyle(0,2,3);
  rectangle(10,420,56,466);
  setlinestyle(0,0,0);
  setcolor(RED);
  circle(33,442,15);
  circle(33,442,13);
  setcolor(DARKGRAY);
  circle(33,442,9);
	setfillstyle(9,RED);
  floodfill(33,442,DARKGRAY);
}

void yellowpiece(void)
{
  ////////////for yellow piece/////
	setcolor(LIGHTBLUE);
  setlinestyle(0,2,3);
  rectangle(56,420,102,466);
  setlinestyle(0,0,0);
  setcolor(YELLOW);
  circle(80,442,15);
  circle(80,442,13);
  setcolor(DARKGRAY);
  circle(80,442,9);
  setfillstyle(9,YELLOW);
  floodfill(80,442,DARKGRAY);
}

void bluepiece(void)
{
  //////////////////////for cyan piece/////
  setcolor(LIGHTBLUE);
  setlinestyle(0,2,3);
  rectangle(10,374,56,420);
  setlinestyle(0,0,0);
	setcolor(CYAN);
  circle(33,397,15);
  circle(33,397,13);
  setcolor(DARKGRAY);
  circle(33,397,9);
  setfillstyle(9,CYAN);
  floodfill(33,397,DARKGRAY);
}

void magentpiece(void)
{
  //////////////for light magenat piece//////
  setcolor(LIGHTBLUE);
	setlinestyle(0,2,3);
  rectangle(56,374,102,420);
  setlinestyle(0,0,0);
  setcolor(LIGHTMAGENTA);
  circle(80,397,15);
  circle(80,397,13);
  setcolor(DARKGRAY);
	circle(80,397,9);
  setfillstyle(9,LIGHTMAGENTA);
  floodfill(80,397,DARKGRAY);
}

void snakes(void)
{
  //////////////////////////////SNAKES////////////////////////////////////
/////////////////////////snake from 5 to 24 ////////////////////////////////
 setcolor(LIGHTGREEN);
 arc(339+10,389,140,270,40);  ///////first arc
 arc(338+10,450,330,90,20);   //////tail arc
 arc(344+10,389,140,270,30);  //////second arc
 arc(343+10,440,315,90,20);   //////second tail arc
 line(307+10,363,324+10,360);    ////line from first arc to mouth
 line(318+10,365,324+10,360);
 line(318+10,365,326+10,363);
 line(326+10,364,322+10,369);
 ////////tounge////////////////////
 setcolor(RED);
 line(319+10,365,330+10,359);
 //////////eye of snake////////////
 setcolor(YELLOW);
 circle(308+10,360,2);
 setfillstyle(2,RED);
 floodfill(308+10,360,YELLOW);
 /////FILL COLOR/////////
 setfillstyle(1,RED);
 floodfill(310+10,400,LIGHTGREEN);

  //////////////////////snake from 39 to 20 ////////////////////////////////
  setcolor(RED);
  arc(233,345,120,230,40);  ///////first arc
	arc(188,385,310,50,20);   //////tail arc
  arc(237,345,120,230,30);  //////second arc
  arc(194,378,295,50,25);   //////second tail arc
  line(205,400,189,403);  ////tail
  ////line from first arc to mouth////////////
  line(213,311,230,308);
  line(224,314,230,308);
	line(224,314,232,313);
  line(221,320,232,313);
  ////////tounge/////////////
  setcolor(LIGHTRED);
  line(227,313,236,310);
  //////////eye of snake////////////
  setcolor(GREEN);
  circle(214,308,2);

  setfillstyle(2,RED);
  floodfill(214,308,GREEN);
  /////FILL COLOR/////////
  setfillstyle(1,GREEN);
	floodfill(201,349,RED);

  //////////////////////snake from 92 to 71 ///////////////////////////////
  setcolor(LIGHTCYAN);
  arc(550,70,330,50,45);  ///////first arc
  arc(608,100,140,280,20);   //////tail arc
  arc(545,70,330,50,35);  //////second arc
	arc(597,100,140,315,25);   //////second tail arc
  ////line from first arc to mouth/////////////
  line(580,36,565,31);
  line(565,31,568,37);
  line(568,37,560,37);
  line(560,37,569,44);
  ////////tounge///////////
  setcolor(RED);
  line(558,30,566,35);
  /////////////eye of snake /////////////////////
  setcolor(GREEN);
  circle(580,33,2);
  setfillstyle(2,RED);
	floodfill(580,33,GREEN);
  /////FILL COLOR/////////
  setfillstyle(1,BLUE);
  floodfill(590,70,LIGHTCYAN);

 /////////////////snake from 55 to 35 //////////////////////////////////////

 setcolor(RED);
 arc(420+5,245,270,50,35);  ///////first arc
 arc(420+5,298,80,200,18);   //////tail arc
 arc(415+5,245,270,50,25);  //////second arc
 arc(420+5,289,90,205,20);   //////second tail arc
 ////line from first arc to mouth////////////////
 line(444+5,220,430+5,214);
 line(430+5,214,435+5,223);
 line(435+5,223,426+5,221);
 line(426+5,221,431+5,227);
  ////////tounge///////////////
 setcolor(LIGHTGREEN);
 line(432+5,220,426+5,215);
 //////////eye of snake////////////
 setcolor(GREEN);
 circle(446+5,218,2);

 setfillstyle(2,RED);
 floodfill(446+5,218,GREEN);
 /////FILL COLOR/////////
 setfillstyle(1,YELLOW);
 floodfill(449+5,238,RED);

//////////////////////snake from 96 to 76 /////////////////////////////////

 setcolor(BROWN);
 arc(372+10,60,270,50,35);  ///////first arc
 arc(372+10,113,80,200,18);   //////tail arc
 arc(367+10,60,270,50,25);  //////second arc
 arc(372+10,104,90,205,20);   //////second tail arc
 ////line from first arc to mouth////////
 line(394+10,34,383+10,28);
 line(383+10,28,388+10,36);
 line(388+10,36,379+10,33);
 line(379+10,33,385+10,42);
 ////////tounge////////////
 setcolor(RED);
 line(385+10,33,378+10,31);
 //////////eye of snake///////////
 setcolor(YELLOW);
 circle(398+10,32,2);

 setfillstyle(2,RED);
 floodfill(398+10,32,YELLOW);
 /////FILL COLOR/////////
 setfillstyle(1,LIGHTGREEN);
 floodfill(402+10,60,BROWN);

  ////////////////////snake from 99 to 43 /////////////////////////////////
  setcolor(WHITE);
  arc(242,73,350,90,35);   ///second arc
  arc(235,75,350,90,28);  //////first arc
  line(263,80,255,240);
	arc(287,245,170,300,32);//////tail arc
  line(277,79,267,240);
  arc(297,245,170,270,30);   //////second tail arc
  ////line from first arc to mouth////////
  line(242,38,233,37);
  line(233,37,242,42);
  line(242,42,236,46);
	////////tounge////////////
  setcolor(RED);
  line(239,42,231,42);
  //////////eye of snake///////////
  setcolor(YELLOW);
  circle(245,35,2);
  setfillstyle(2,RED);
  floodfill(246,36,YELLOW);
  /////FILL COLOR/////////
  setfillstyle(1,RED);
  floodfill(249,43,WHITE);

  //////////////////////snake from 88 to 54 ////////////////////////////////
	setcolor(YELLOW);
  arc(538,132,130,210,60);  ///////first arc
  arc(460,178,310,35,30);   //////tail arc
  arc(538,132,120,210,45);  //////second arc
  arc(472,168,295,30,30);   //////second tail arc
  ////line from first arc to mouth////////////
  line(498,87,509,82);
	line(509,82,505,93);
  line(505,93,513,94);
  ////////tounge/////////////
  setcolor(RED);
  line(506,92,515,87);
  //////////eye of snake////////////
  setcolor(GREEN);
  circle(496,84,2);
  setfillstyle(2,RED);
  floodfill(497,85,GREEN);
  /////FILL COLOR/////////
  setfillstyle(1,MAGENTA);
  floodfill(486,117,YELLOW);

  //////////////////////////snake from 47 to 14 ////////////////////////////////
  setcolor(WHITE);
  arc(450,320,290,55,60);  ///////first arc
  arc(479,394,110,270,20);   //////tail arc
  arc(445,320,290,55,50);  //////second arc
  arc(471,390,110,290,25);   //////second tail arc
	////line from first arc to mouth////////////
  line(483,270,472,264);
  line(472,264,475,273);
  line(475,273,465,270);
  line(465,270,473,278);
  ////////tounge/////////////
  setcolor(RED);
  line(475,273,466,265);
  //////////eye of snake////////////
  setcolor(YELLOW);
  circle(484,267,2);
  setfillstyle(2,RED);
  floodfill(485,268,YELLOW);
	/////FILL COLOR/////////
  setfillstyle(1,GREEN);
  floodfill(481,276,WHITE);
}

void ladders(void)
{
	///////////////////////////LADDERS///////////////////////////////////////
  ///////////////////////////ladder from 66 to 87/////////////////////////////
  setcolor(YELLOW);
  line(450+7,75+5,420+7,148+5);
  line(451+7,75+5,421+7,148+5);
  line(467+7,75+5,437+7,148+5);
  line(468+7,75+5,438+7,148+5);

  line(446+7,85+5,464+7,85+5);
  line(425+7,138+5,440+7,138+5);

  setfillstyle(2,MAGENTA);
  floodfill(447+7,86+5,YELLOW);

  //////////////////ladder from 53 to 32///////////////////////////////////
  setcolor(LIGHTMAGENTA);
  line(535,215,560,290);
  line(536,215,561,290);

  line(518,215,543,290);
	line(519,215,544,290);

  line(540,225,522,225);
  line(540,280,556,280);

  setfillstyle(2,LIGHTGREEN);
  floodfill(539,270,LIGHTMAGENTA);

  ////////////////////ladder from 34 to 15//////////////////////////////////
  setcolor(GREEN);
  line(455,307,428,385);
  line(456,307,429,385);

	line(472,308,445,387);
  line(473,308,446,387);

  line(454,315,471,315);
  line(431,375,449,375);

  setfillstyle(2,RED);
	floodfill(443,363 ,GREEN);

  //////////////////////ladder from 51 to 72/////////////////////////////////
  setcolor(WHITE);
  line(581-3,117,612-3,196);
  line(582-3,117,613-3,196);

  line(567-3,121,597-3,200);
  line(568-3,121,598-3,200);

  line(570-3,130,585-3,126);
  line(594-3,192,609-3,190);

	setfillstyle(2,BROWN);
  floodfill(595-3,170 ,WHITE);

  ///////////////////////ladder from 11 to 23///////////////////////////////
  setcolor(LIGHTRED);
  line(530,349,610,380);
  line(531,349,611,380);

  line(519,362,598,392);
  line(520,362,599,392);

  line(542,353,528,366);
  line(599,376,586,387);

  setfillstyle(4,CYAN);
  floodfill(548,364 ,LIGHTRED);

  //////////////////////ladder from 98 to 77//////////////////////////////
  setcolor(LIGHTGREEN);
  line(298+5,28+5,325+5,102+5);
	line(299+5,28+5,326+5,102+5);

  line(284+5,32+5,310+5,106+5);
  line(285+5,32+5,311+5,106+5);

  line(287+5,40+5,302+5,38+5);
  line(309+5,100+5,323+5,97+5);

  setfillstyle(2,LIGHTMAGENTA);
  floodfill(310+5,78+5 ,LIGHTGREEN);

  ////////////////////ladder from 79 to 60//////////////////////////////////
  setcolor(YELLOW);
  line(191,193+5,226,119+5);
  line(192,193+5,227,119+5);

  line(210,194+5,244,120+5);
  line(211,194+5,245,120+5);

  line(239,129+5,221,129+5);
	line(194,186+5,214,186+5);

  setfillstyle(2,LIGHTRED);
  floodfill(207,172+5 ,YELLOW);

  //////////////////////ladder from 65 to 58///////////////////////////////
  setcolor(LIGHTMAGENTA);
	line(358+5,158+5,285+5,187+5);
  line(359+5,158+5,286+5,187+5);

  line(367+5,172+5,291+5,202+5);
  line(368+5,172+5,292+5,202+5);

  line(351+5,162+5,357+5,175+5);
  line(299+5,199+5,294+5,183+5);

  setfillstyle(5,GREEN);
  floodfill(337+5,170+5 ,LIGHTMAGENTA);

  ////////////////////ladder from 44 to 25//////////////////////////////////
	setcolor(LIGHTCYAN);
  line(342+5,259+5,370+5,336+5);
  line(343+5,259+5,371+5,336+5);

  line(327+5,260+5,355+5,336+5);
  line(328+5,260+5,356+5,336+5);

	line(332+5,272+5,348+5,272+5);
  line(353+5,330+5,367+5,330+5);

  setfillstyle(2,CYAN);
  floodfill(358+5,317+5 ,LIGHTCYAN);

  ///////////////////////ladder from 2 to 23///////////////////////////////
  setcolor(GREEN);
  line(271,355,240,431);
  line(272,355,241,431);

  line(286,355,258,433);
  line(287,355,259,433);

  line(267,364,285,364);
  line(262,423,243,423);

  setfillstyle(2,LIGHTGREEN);
  floodfill(256,406 ,GREEN);
}

void dice2()
{
  int ax[8],ay[8],px[8],py[8],bx[8],by[8];
  ax[0]=280-230;
  ay[0]=200;
  ax[1]=320-230;
  ay[1]=200;
  ax[3]=280-230;
  ay[3]=240;
  ax[2]=320-230;
  ay[2]=240;
  ax[4]=280+10-230;
	ay[4]=240-10;
  ax[5]=320+10-230;
  ay[5]=240-10;
  ax[6]=280+10-230;
  ay[6]=200-10;
  ax[7]=320+10-230;
  ay[7]=200-10;
	bx[0]=320-230;
  by[0]=200;
  bx[1]=320-230;
  by[1]=240;
  bx[3]=280-230;
  by[3]=200;
  bx[2]=280-230;
  by[2]=240;
  bx[6]=320+10-230;
  by[6]=200-10;
  bx[7]=320+10-230;
  by[7]=240-10;
  bx[4]=280+10-230;
	by[4]=200-10;
  bx[5]=280+10-230;
  by[5]=240-10;
  int cond;
  for(float t=0.0;t<1.0;t+=0.02)
  {
  for(int i=0;i<8;i++)
	{
   px[i]=(1.0-t)*ax[i]+t*bx[i];
   py[i]=(1.0-t)*ay[i]+t*by[i];
  }
  setcolor(15);
  line(px[0],py[0],px[1],py[1]);
  line(px[1],py[1],px[2],py[2]);
  line(px[2],py[2],px[3],py[3]);
  line(px[3],py[3],px[0],py[0]);
  if(px[5]>px[1]-10)
  {
   line(px[2],py[2],px[5],py[5]);
   line(px[7],py[7],px[5],py[5]);
	 setfillstyle(1,BROWN);
   floodfill(px[5]-5,py[5]-10,15);
  }
  line(px[6],py[6],px[7],py[7]);
  line(px[7],py[7],px[1],py[1]);
  line(px[6],py[6],px[0],py[0]);
  setfillstyle(1,BROWN);
	floodfill(px[0]+3,py[0]+3,15);
  if(px[0]-10>px[4])
  {
   line(px[4],py[4],px[6],py[6]);
   line(px[4],py[4],px[3],py[3]);
   line(px[7],py[7],px[1],py[1]);
  }
  setfillstyle(1,0);
  floodfill(13,153,15);
  setcolor(BROWN);
  line(px[0],py[0],px[1],py[1]);
  line(px[1],py[1],px[2],py[2]);
  line(px[2],py[2],px[3],py[3]);
	line(px[3],py[3],px[0],py[0]);
  line(px[4],py[4],px[5],py[5]);
  line(px[4],py[4],px[3],py[3]);
  line(px[5],py[5],px[2],py[2]);
  line(px[6],py[6],px[7],py[7]);
  line(px[7],py[7],px[1],py[1]);
  line(px[6],py[6],px[0],py[0]);
	line(px[7],py[7],px[5],py[5]);
  line(px[4],py[4],px[6],py[6]);
 }
 setcolor(15);
 line(ax[0],ay[0],ax[1],ay[1]);
 line(ax[1],ay[1],ax[2],ay[2]);
 line(ax[2],ay[2],ax[3],ay[3]);
 line(ax[3],ay[3],ax[0],ay[0]);
 line(ax[5],ay[5],ax[2],ay[2]);
 line(ax[6],ay[6],ax[7],ay[7]);
 line(ax[7],ay[7],ax[1],ay[1]);
 line(ax[6],ay[6],ax[0],ay[0]);
 line(ax[7],ay[7],ax[5],ay[5]);
}

void dice1()
{
 int ax[8],ay[8],px[8],py[8],bx[8],by[8];
 ax[0]=280-230;
 ay[0]=200;
 ax[1]=320-230;
 ay[1]=200;
 ax[3]=280-230;
 ay[3]=240;
 ax[2]=320-230;
 ay[2]=240;
 ax[4]=280+10-230;
 ay[4]=240-10;
 ax[5]=320+10-230;
 ay[5]=240-10;
 ax[6]=280+10-230;
 ay[6]=200-10;
 ax[7]=320+10-230;
 ay[7]=200-10;
 bx[0]=280+10-230;
 by[0]=200-10;
 bx[1]=320+10-230;
 by[1]=200-10;
 bx[3]=280-230;
 by[3]=200;
 bx[2]=320-230;
 by[2]=200;
 bx[4]=280-230;
 by[4]=240;
 bx[5]=320-230;
 by[5]=240;
 bx[6]=280+10-230;
 by[6]=240-10;
 bx[7]=320+10-230;
 by[7]=240-10;
 for(float t=0.0;t<1.0;t+=0.09)
 {
 for(int i=0;i<8;i++)
 {
  px[i]=(1.0-t)*ax[i]+t*bx[i];
  py[i]=(1.0-t)*ay[i]+t*by[i];
 }
 setlinestyle(0,2,3);
 setcolor(15);
 rectangle(10,150,140,280);
 setlinestyle(0,0,0);
 setcolor(15);
 line(px[0],py[0],px[1],py[1]);
 line(px[1],py[1],px[2],py[2]);
 line(px[2],py[2],px[3],py[3]);
 line(px[3],py[3],px[0],py[0]);
 line(px[2],py[2],px[5],py[5]);
 line(px[7],py[7],px[5],py[5]);
 setfillstyle(1,BROWN);
 floodfill(px[0]+10,py[0]+1,15);
 if(py[6]<py[0])
 {
  line(px[6],py[6],px[7],py[7]);
	line(px[7],py[7],px[1],py[1]);
  line(px[6],py[6],px[0],py[0]);
  floodfill(px[2]+1,py[2]-3,15);
  floodfill(px[6]+1,py[6]+1,15);
  }
 if(py[5]>py[3])
 {
	line(px[4],py[4],px[5],py[5]);
  line(px[4],py[4],px[3],py[3]);
  line(px[5],py[5],px[2],py[2]);
  line(px[7],py[7],px[1],py[1]);
 }
  setcolor(BROWN);
  setfillstyle(1,0);
  floodfill(13,153,15);
  delay(15);
  line(px[0],py[0],px[1],py[1]);
  line(px[1],py[1],px[2],py[2]);
  line(px[2],py[2],px[3],py[3]);
  line(px[3],py[3],px[0],py[0]);
	line(px[4],py[4],px[5],py[5]);
  line(px[4],py[4],px[3],py[3]);
  line(px[5],py[5],px[2],py[2]);
  line(px[6],py[6],px[7],py[7]);
  line(px[7],py[7],px[1],py[1]);
  line(px[6],py[6],px[0],py[0]);
  line(px[7],py[7],px[5],py[5]);
 }
}

void dicenumber(int a)
{
 setcolor(DARKGRAY);
 setfillstyle(1,BLACK);
 switch(a)
	{
	case 1:  circle(70,220,5);/////////center////////
		 floodfill(71,221,DARKGRAY);
		 break;
	case 2:	 circle(60,210,5);//////left upper
		 floodfill(61,211,DARKGRAY);
		 circle(80,230,5);///////right down//////
		 floodfill(81,231,DARKGRAY);
		 break;
	case 3:  circle(70,220,5);/////////center////////
		 floodfill(71,221,DARKGRAY);
		 circle(60,210,5);//////left upper
		 floodfill(61,211,DARKGRAY);
		 circle(80,230,5);///////right down//////
		 floodfill(81,231,DARKGRAY);
		 break;
	case 4:  circle(60,210,5);//////left upper
		 floodfill(61,211,DARKGRAY);
		 circle(80,230,5);///////right down//////
		 floodfill(81,231,DARKGRAY);
		 circle(80,210,5);//////right upper
		 floodfill(81,211,DARKGRAY);
		 circle(60,230,5);//////left down///////
		 floodfill(61,231,DARKGRAY);
		 break;
	case 5:  circle(60,210,5);//////left upper
		 floodfill(61,211,DARKGRAY);
		 circle(80,230,5);///////right down//////
		 floodfill(81,231,DARKGRAY);
		 circle(80,210,5);//////right upper
		 floodfill(81,211,DARKGRAY);
		 circle(60,230,5);//////left down///////
		 floodfill(61,231,DARKGRAY);
		 circle(70,220,5);/////////center////////
		 floodfill(71,221,DARKGRAY);
		 break;
	case 6:  circle(60,210,5);//////left upper
		 floodfill(61,211,DARKGRAY);
		 circle(80,230,5);///////right down//////
		 floodfill(81,231,DARKGRAY);
		 circle(80,210,5);//////right upper
		 floodfill(81,211,DARKGRAY);
		 circle(60,230,5);//////left down///////
		 floodfill(61,231,DARKGRAY);
		 circle(70,210,5);/////for six////////upper center
		 floodfill(71,211,DARKGRAY);
		 circle(70,230,5);//////for six//lower center
		 floodfill(71,231,DARKGRAY);
		 break;
	}
}

void removedicenumber(void)
{
 setfillstyle(1,BROWN);
 circle(60,210,5);//////left upper
 floodfill(61,211,WHITE);
 circle(80,230,5);///////right down//////
 floodfill(81,231,WHITE);
 circle(80,210,5);//////right upper
 floodfill(81,211,WHITE);
 circle(60,230,5);//////left down///////
 floodfill(61,231,WHITE);
 circle(70,220,5);/////////center////////
 floodfill(71,221,WHITE);
 circle(70,210,5);/////for six////////upper center
 floodfill(71,211,WHITE);
 circle(70,230,5);//////for six//lower center
 floodfill(71,231,WHITE);
}
void laddersound(void)
{
 for(int r=150;r<=500;r+=50)
 {
  sound(r);
  delay(200);
  nosound();
 }
}

void snakesound(void)
{
 for(int d=2460;d>=800;d-=50)
 {
 sound(d);
 delay(30);
 nosound();
 }
}

void messagebox(void)
{
    sound(2500);
		delay(250);
    sound(2500);
    delay(500);
    sound(2500);
    delay(500);
    nosound();
    setcolor(WHITE);
    rectangle(200,200,480,280);
    setfillstyle(1,YELLOW);
    floodfill(242,202,WHITE);
    setcolor(DARKGRAY);
    rectangle(200,200,480,220);
		setfillstyle(1,GREEN);
    floodfill(202,202,DARKGRAY);
    setcolor(BLACK);
    moveto(205,198);
    settextstyle(1,0,1);
    outtext("Message");
    setcolor(LIGHTBLUE);
    moveto(230,240);
		settextstyle(3,0,1);
    outtext("THIS MOVE IS NOT POSSIBLE");
    setcolor(LIGHTRED);
    circle(215,253,10);
    setfillstyle(1,RED);
    floodfill(216,254,LIGHTRED);
    setcolor(BLACK);
    line(215,246,215,256);
    circle(215,260,1);
}

void congragulation(void)
{
    setcolor(YELLOW);
    rectangle(230,270,370,320);

    rectangle(284,270,314,190);

    rectangle(260,190,340,190);

		line(260,190,190,100);
    line(340,190,410,100);

    rectangle(191,100,409,101);

    rectangle(175,115,176,130);
    rectangle(175,130,215,131);
    rectangle(175,115,201,116);

    rectangle(399,115,430,116);
    rectangle(430,116,429,130);
    rectangle(387,131,429,130);

    setfillstyle(1,BROWN);
    floodfill(271,169,YELLOW);
    floodfill(285,191,YELLOW);
    floodfill(182,129,YELLOW);
    floodfill(395,129,YELLOW);

    settextstyle(8,HORIZ_DIR,4);
		setcolor(BROWN);
    outtextxy(150,20,"CONGRAGULATIONS");
    outtextxy(135,370,"YOU WON THE GAME");

    getch();
}

void mouse(int ax,int bx,int cx,int dx)
{
 union REGS in,out;
 in.x.ax=ax;
 in.x.bx=bx;
 in.x.cx=cx;
 in.x.dx=dx;
 int86(0x33,&in,&out);
 gax=out.x.ax;
 gbx=out.x.bx;
 gcx=out.x.cx;
 gdx=out.x.dx;
}
